<?php
/**
* ... ...
* ... ...
*
*/



// 载入父 类
//<<[UnmodifiableBlock.Start]::Include Parent Class::>>//
JCAT_Package::ImportClass('JCAT_UIGtkCtrlTree',JCAT::PACKAGE_UICTRLGTK) ;
//<<[UnmodifiableBlock.End]::Include Parent Class::>>//

// 载入所需的 数据校验器 类
//<<[UnmodifiableBlock.Start]::Include Data Verifier Class::>>//

//<<[UnmodifiableBlock.End]::Include Data Verifier Class::>>//

/**
* JCAT_UIGtkCtrlTree 类型UI控件 TreeDirSetting
*
* @access public
* @author 由 JeCat PHP Toolbox 产生
*/
abstract class TreeDirLstBase
//<<[UnmodifiableBlock.Start]::Extends::>>//
	extends JCAT_UIGtkCtrlTree 
	//<<[UnmodifiableBlock.End]::Extends::>>//
{
	
	/**
	* what's this
	*
	* @access public
	* @return void
	*/
	public function OnUICtrlChanged()
	{
		if( !$this->IsEnableUICtrlChangedEvent() )
		{
			return ;
		}
	
		// 父类
		parent::OnUICtrlChanged() ;
		
		// 暂停事件
		$bOldValue = $this->EnableUICtrlChangedEvent(false) ;
		
		// 清除 空Item
		$aIterator = $this->CreateItemIterator() ;
		$aModel = $this->GetGtkModel() ;
		$aIterator->First() ;
		while( !$aIterator->IsDone() )
		{
			$aItem = $aIterator->Current() ;
			
			$sPath = $aModel->get_value($aItem,0) ;
			$sPath = trim($sPath) ;
			
			if( $sPath==='' )
			{
				$aModel->remove($aItem);
			}
			
			$aIterator->Next() ;
		}
		
		// 恢复事件
		$this->EnableUICtrlChangedEvent($bOldValue) ;
		
		// 增加
		$this->CreateEmptyLine($aModel) ;
	}
	
	
	/**
	 * what's this
	 * 
	 * @access	private
	 * @param	$aModel		GtkTreeStore		what's this
	 * @return	void
	 */
	protected function CreateEmptyLine(GtkTreeStore $aModel)
	{
		// 暂停事件
		$bOldValue = $this->EnableUICtrlChangedEvent(false) ;
		
		$aModel->append(null,array('')) ;
		
		// 恢复事件
		$this->EnableUICtrlChangedEvent($bOldValue) ;
	}

}






?><?
/**
* [注意!!]
* 以下内容由 JCAT PHP Toolbox 自动维护，手动更改的内容会被 JCAT PHP
Toolbox 抹除，
* 同时还可能破坏格式，导致 JCAT PHP Toolbox 无法正常读取。
*/
/*<<[UnmodifiableBlock.Start]::Coder Dialog Data::>>&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&//
<<{{DocumentClass:UICtrlGtkTreeDoc}}>>
eCVEQSVBNVIlQ0RuJUQzJTQwJTEwJUJFJTIzJUYxJTEwJUY1JTlEJUY4JTI3JTI5JTk0dVUlQzlsJTkyJUQ2bm05JThEJUQ3JTg4UyVFNCVEQUslQjMlRjElQ0ZGJUY2JTk2JTI0JThBJUZDJTE4JTVDJUUwJUM0JTBCJUU0JUNFJTAxJURFJUE2JTAyJURFJTgyWSUyNyU1QiU4QSU4NCUxMCUxMiU4NzklRUMlQ0MlQjcl
REY3JUYzJUNEJTI0JUM4QiVEQiUwNiUwRCU5MDZMRCVBMiVEOSUwOXolMjElREYlRTZLJUE0JTExJTE3JThCJUJBcCVDQmVBS1olODloJUIzJUE0JTlBJUNEJTkwaTclODAlRDEwJTJGJUVFJUNBJUFBJTkxJTNGJTgwJTgxJTIxQyU3RCUzREFaJTNBZ0VWJUQzSiUxNiUwRCVCNG1lJUI1QSVDRiU5MSVGNiVFMyVEMyVF
N28lMUZ3JThBJUM1JTg0JUNDJUI5JUM4JTExJThBJURFJTg0JUEzJUQ5NCVCQXYlODNzWSVCMyVFQyVBRSVBMSU4OCVBRSU4NSU3QyVGNiVFRCUxQiU4MDM0JUIwJTNCciU3QyVFNSVDRiVEQ2glRTQlQ0IlRDIxJUM0MyVEM24lMjUlREYlM0YlQzglODMlRjYlRkQlOTclRjclRkYlMkYlMUYlM0ElRDElQzVjJUY5JTE2
JUM4JTBDZVglOTAlOTQlRTAlMTNkJTI0R00lRTklOTAlRDVTJTJBJTA0JUFCbiVCQiVFQyU4OSVDMiVGOSUwOSVBQiU1RSVCMyVFQyU5NiUwQXclRjglMTclQkMlQTUlRjAlQzQlN0QlNjAlQjYlRDQlMjglREZ3XyVFRnclMUYlQkElREMlODMlRkUlMjUlQUIyJUE1JUU0YSUyNyU5QSUxMSUxNyVBNiU5NCUxNSVDOSVE
RVUlOEUlMTUlMTYlMTdJJUQzJTg0JTg5JTk4SyVBQiVDQyVGRCUxQSUyNSU5NyU4OTQlN0QlQ0VLJUFBJTI3JTA1JUE1elglRjMlMDVNJTg1JUVFUSU5QyUwOCUzRCVCQyUwOCUyMyVDRSU4QiUxQiVCRSVENiVCQiVFRiVCNCVEMTElQ0ZoJUZEJTBCJTA2JUEyJTkwJTJBSyU1RSVGNSVGNjJ6JTJBJTgxJUJEJURGJUE3
JUVCLSVFN0slQUQlRjNOJUJBJUZBaGUlQTYlM0ElQTclQkUlREMlMjclRjQlREElRkQlOTYlOEQlNUIlQzZhJTI0JUE3JTg2JTFEJUJGJUEzQyU5RSVERSVDOSVEMyVENCVGNiUxQiVBQiUwRSVGRVglRDYlRkUlOUFjWiVCMyVCNyU4QyVENnAlQUElMDU0JUM2eHUlMDBmJUREJUE5JUMzJUEwJTdEOCU4MSVEMyVEMyVF
RFYlMTF1JTAzJUExJTNGSSVCNCVFRCVEOSVEOSVEMyUyNyUxNCVDNyVBMyUwOWklOEElQzliJUIyJUYxJTg4a3hkJUZDJUVBJThBJUM1OFglQjglOTAlMUJPJUQzJTNDJTJGJUZDJTNDJUYwYiUxQ2MlM0YlMUYlMjglRENKJUUyKyVDNiUxMCUyMyUyRnJMJTg4JTE1JUMxJUE0JTdGJThEJUM5JTJBJUQ4JTkwJUI1JUVG
JTFDJTFESSUyRiVEQSU5RiVBNiVDOSUyOTk!
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&<<[UnmodifiableBlock.End]::Coder Dialog Data::>>*/
?>